Data storage system with information exchange mechanism and method of operation thereof

ABSTRACT

A data storage system, and a method of operation thereof, includes: a host initialization module for initializing a data storage unit; a command process module, coupled to the host initialization module, for processing a read command or a write command performed on the data storage unit; and a status scheduler module, coupled to the command process module, for generating a check status request to inquire a storage unit status of the data storage unit, wherein the check status request occurs without interrupting a host.

TECHNICAL FIELD

The present invention relates generally to a data storage system andmore particularly to a system for information exchange.

BACKGROUND ART

Data storage, often called storage or memory, refers to computercomponents and recording media that retain digital data. Data storage isa core function and fundamental component of consumer and industrialelectronics, especially devices such as computers, televisions, cellularphones, mobile devices, and digital video cameras.

Data storage systems are inevitable for modern day computing. All knowncomputing platforms ranging from handheld devices to large supercomputers use storage systems for storing data temporarily orpermanently. Beginning from punch cards capable of storing a few bytesof data, data storage systems have reached to multi Terabytes ofcapacities in comparatively less space and power consumption.

As seen in modern day computers, data storage devices can be found inmany forms. Data storage devices can be classified based on manycriterions. Data storage devices can include primary storage andsecondary storage. Data storage devices can be further classified basedon the memory technology that they use, based on its data volatility.

Classifications of memory devices can include primary, secondary, andtertiary storage. The classifications can also include volatile storage,non-volatile storage, read only and writable storage, random accessstorage, sequential access storage, magnetic storage, optical storage,and semiconductor storage.

Oftentimes, problems related to maintenance and serviceability aspectsof storage are not given enough attention in system architecture, but itcan make or break service level agreements (SLA) for applicationresponse times. Understanding how to build a cost-effective,high-performance storage system can save money not only in the storagesubsystem, but in the rest of the system as well.

Thus, a need still remains for better cost-effective, high-performancestorage systems. In view of the increasing demand for thecost-effective, high-performance storage systems, it is increasinglycritical that answers be found to these problems. In view of theever-increasing commercial competitive pressures, along with growingconsumer expectations and the diminishing opportunities for meaningfulproduct differentiation in the marketplace, it is critical that answersbe found for these problems. Additionally, the need to reduce costs,improve efficiencies and performance, and meet competitive pressuresadds an even greater urgency to the critical necessity for findinganswers to these problems.

Solutions to these problems have been long sought but prior developmentshave not taught or suggested any solutions and, thus, solutions to theseproblems have long eluded those skilled in the art.

DISCLOSURE OF THE INVENTION

Embodiments of the present invention provide a method of operation of adata storage system including: initializing a data storage unit;processing a read command or a write command performed on the datastorage unit; and generating a check status request to inquire a storageunit status of the data storage unit, wherein the check status requestoccurs without interrupting a host.

Embodiments of the present invention provide a data storage system,including: a host initialization module for initializing a data storageunit; a command process module, coupled to the host initializationmodule, for processing a read command or a write command performed onthe data storage unit; and a status scheduler module, coupled to thecommand process module, for generating a check status request to inquirea storage unit status of the data storage unit, wherein the check statusrequest occurs without interrupting a host.

Certain embodiments of the invention have other steps or elements inaddition to or in place of those mentioned above. The steps or theelements will become apparent to those skilled in the art from a readingof the following detailed description when taken with reference to theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a data storage system with information exchange mechanism in afirst embodiment of the present invention.

FIG. 2 is an exemplary implementation of the data storage units.

FIG. 3 is an exemplary implementation of the service networkcontrollers.

FIG. 4 is an operational flow chart of the data storage system of FIG.1.

FIG. 5 is a data storage system with information exchange mechanism in asecond embodiment of the present invention.

FIG. 6 is a flow chart of a method of operation of a data storage systemin a further embodiment of the present invention.

BEST MODE FOR CARRYING OUT THE INVENTION

The following embodiments are described in sufficient detail to enablethose skilled in the art to make and use the invention. It is to beunderstood that other embodiments would be evident based on the presentdisclosure, and that system, process, or mechanical changes may be madewithout departing from the scope of the present invention.

In the following description, numerous specific details are given toprovide a thorough understanding of the invention. However, it will beapparent that the invention may be practiced without these specificdetails. In order to avoid obscuring the present invention, somewell-known circuits, system configurations, and process steps are notdisclosed in detail.

The drawings showing embodiments of the system are semi-diagrammatic andnot to scale and, particularly, some of the dimensions are for theclarity of presentation and are shown exaggerated in the drawing FIGs.

The term “module” referred to herein can include software, hardware, ora combination thereof in embodiments of the present invention inaccordance with the context in which the term is used. For example, thesoftware can be machine code, firmware, embedded code, and applicationsoftware. Also for example, the hardware can be circuitry, processor,computer, integrated circuit, integrated circuit cores, amicroelectromechanical system (MEMS), passive devices, environmentalsensors including temperature sensors, or a combination thereof.

There are problems associated with many types of storage units that havedifferent failure mechanisms and life-spans in data storage systems.Serviceability and data security are very important for data centerapplications. There is a critical need to monitor each of the storageunits' status and perform maintenance ahead of time or outside criticalwindows. Backup data before data of the storage units is un-recoverable.

Hot data and cold data affect the life-spans of some of the storageunits, e.g., flash or solid state drive (SSD) wear leveling. Levelinghot data and cold data can help extend the life-spans of the storageunits. An SSD can do wear leveling within itself. However, wear levelingbetween the storage units has not been done. In other words, wearleveling has been done in individual drives for hot and cold data butthe embodiments of the present invention are able to go to next level,i.e., across different SSDs.

Hot data is data that is accessed frequently. For example, hot data caninclude recent emails or popular products on an e-commerce site. Colddata is data that is accessed infrequently or written continuously. Colddata can be less timely or less frequently accessed than hot data. Forexample, cold data can include week-old emails.

There are Self-Monitoring Analysis and Reporting Technology (S.M.A.R.T.)commands defined in hard disk drive (HDD) or SSD standards. The standardS.M.A.R.T. commands provide very limited information and many usefulcommands are vendor specific. A lot of software effort is needed to makedifferent vendors' products compatible.

These protocols ride on an existing main data channel and interfere withuser data transfers. Some types of the storage units do not have astandard yet. Even the storage units from the same company may havedifficulty communicating with various types of storage units in asystem. It can be very difficult to collect information and manage thestorage units.

At this time, the storage units are lacking a universal hardware orsoftware standard to communicate or manage above-mentioned issueseffectively. Embodiments of the present invention solve these problems.The embodiments provide a separate unified communication channel toaddress the above issues or problems.

Referring now to FIG. 1, therein is shown a data storage system 100 withinformation exchange mechanism in a first embodiment of the presentinvention. The data storage system 100 can include the informationexchange mechanism applied to an internet of data storage units 102(DSU). The data storage units 102 are devices for recording or storinginformation.

The data storage system 100 can include the data storage units 102connected in service networks 104 in a system with multiple hosts 106.The hosts 106 send or receive information from the data storage units102. The service networks 104 manage and provide the informationexchange mechanism among devices that are connected with each other.

The data storage units 102 can hold information, process information, ora combination thereof. For example, the data storage units 102 can beconnected together as an internet of drives. Also for example, the datastorage units 102 can include data storage devices, such as a hard diskdrives, memory card readers or drives, disk enclosures, volatilememories, and non-volatile memories. Further, for example, the datastorage units 102 can include embedded Multi-Media Controllers (eMMC)and solid state drives (SSD).

The data storage system 100 can include service network servers 108. Forexample, the service network servers 108 can preferably include wirelessservice network (WSN) servers or can include servers for any othercommunication networks including wired networks.

Each of the service network servers 108 can communicate with one ofservice network controllers 110 locally within each of the servicenetworks 104. The service network servers 108 can also communicate witheach other. The service network servers 108 can be at different physicallocations 112.

For example, the service network controllers 110 can preferably includewireless service network controllers (WSNC) or can include controllersfor any other communication networks including wired networks. Also forexample, the service network controllers 110 can be implemented orintegrated in the data storage units 102.

As an example, one of the service network servers 108, such as a localservice network server, can be locally located at one of the physicallocations 112, such as a local location. The local service networkserver can communicate with another of the service network servers 108,such as a remote service network server. The remote service networkserver can be at another of the physical locations 112, such as a remotelocation, that is physically different and away from the local location.

As another example, the local service network server can alsocommunicate with the service network controllers 110 in the remotelocation, such as remote service network controllers. As a furtherexample, the service network controllers 110 in the local location, suchas local service network controllers, and the remote service networkcontrollers can communicate with each other to exchange information.

The service network servers 108 can communicate with the hosts 106through regular networks used for transferring user or control data. Theregular networks referred to herein can include physical structures forproviding connectivity among communication devices, wherein the physicalstructures are different from the service networks 104.

The hosts 106 can be connected to one or multiple of the data storageunits 102 and one or multiple of the service network controllers 110.The hosts 106 can be in different physical locations 112. For example,one of the hosts 106 can be in one of the physical locations 112 andanother of the hosts 106 can be in another of the physical locations112.

The service networks 104 can be established and connected remotely withthe hosts 106 at different physical locations 112. The service networks104 can be established and connected remotely via an internetinfrastructure or an internet cloud 114. The service networks 104 can beestablished and managed by local network controllers 116. Each of theservice networks 104 can be managed by one of the local networkcontrollers 116 that is locally located in each of the physicallocations 112.

For example, the local network controllers 116 can preferably includewireless network access points and routers for providing control ormanagement of the service networks 104. Also for example, one of theservice networks 104 in the local location, such as a local servicenetwork, can be established and connected remotely with the hosts 106 atthe remote location. Further, for example, the local service network canbe established and connected to another of the service networks 104 inthe remote location, such as a remote service network, via the internetcloud 114 and the local network controllers 116.

Embodiments of the present invention provide connections among varioustypes of the data storage units 102 on the service networks 104 toexchange information between the data storage units 102. The embodimentsalso provide communication of the data storage units 102 with acentralized controller using the service network servers 108, theservice network controllers 110, the local network controllers 116, or acombination thereof for health status monitoring, workload balancing,and/or metadata management of the data storage units 102.

The service networks 104 can include any communication mechanismspreferably including wired networks or including wired networks and openstandard or proprietary interfaces. The information exchange mechanismprovided within the service networks 104 can include non-user data. Thenon-user data includes information that is used to control or manage thedata storage units 102.

Embodiments of the present invention create a side-band “servicenetwork” or the service networks 104 among the data storage units 102for easier implementation and mitigation of hardware and host operatingsystem (OS) driver compatibility issues. The service networks 104 can bebuilt easily and cost-effectively.

For example, the service networks 104 can include the Internet of Things(IoT) that has established an ecosystem for low cost, low power, andsmall footprint implementations. Also for example, the service networks104 can include WiFi, ZigBee, Bluetooth, or other wireless protocols.All of these wireless protocols, with or without bridges, can beconnected to the internet for remote and centralized access.

The embodiments provide a cost effective solution with costs below a fewdollars. The embodiments also provide power consumption reduction withpowers below tens of milliwatts (mW). The embodiments can connect thedata storage units 102 of an entire data center onto the servicenetworks 104 easily.

Information exchanged between the data storage units 102 and the hosts106 or the local network controllers 116 can be very easy and useful.Critical parameters can be collected real-time and easily. For example,the critical parameters that are important to the operation andlife-spans of the data storage units 102 can include temperature,terabytes written (TBW), bit error rates (BER), elapse time, power ontime, etc.

This collection of information to check statuses of the data storageunits 102 can be done in parallel with and without interrupting thehosts 106 and the data storage units 102 from their normal operation.Health status of the data storage units 102 can be monitored real-timeand easily to perform prevention actions, which are operations thateliminate premature or early failures of the data storage units 102thereby maximizing the life-spans of the data storage units 102.

Maintenance of the data storage units 102 can be performed easily. Forexample, the maintenance can include firmware update, file systemrepair, data scribing, refresh, etc. Mechanisms to initiatepoint-to-point optimization commands are provided. Wear leveling betweenor among the data storage units 102 is made possible.

Storage controllers or networks can be informed to route hot data andcold data to appropriate drives or the data storage units 102. Thestorage controllers can be implemented using the service network servers108, the service network controllers 110, and the local networkcontrollers 116. The networks can be implemented using the servicenetworks 104.

The embodiments can provide real-time information for debug andcharacterization data of the data storage units 102. The embodiments cantune Flash Translation Layer (FTL) performance and metadata real-timebased on workloads and health conditions of each of the data storageunits 102 including drives. The embodiments can provide backup ofcritical metadata from the data storage units 102.

For example, the data storage system 100 can be applicable for SerialATA (SATA) SSD in data centers. As a specific example, the data storagesystem 100 can be applied to an existing SATA SSD by adding a ZigBee orWiFi wireless module to each of the SATA SSDs. As another specificexample, a ZigBee or WiFi network can be established within each of theservice networks 104 for all of the data storage units 102 and using acontroller, bridge, or the local network controllers 116 to connect thedata storage units 102 to the internet cloud 114.

As a further example, all of the SATA SSDs can be on the servicenetworks 104. The data storage system 100 provides all the benefitspreviously mentioned and more. As a yet further example, the servicenetworks 104 can be operated at a low rate that is lower than a rateused by actual normal storage applications.

For example, the data storage system 100 can be applicable to eMMCevaluation boards. Also for example, one of the applications of the datastorage system 100 can be on a an eMMC-type of a soldered-down SSD in asingle ball grid array (BGA) package that can be used in cell phone andautomotive applications. In the automotive applications, the datastorage system 100 can provide wireless monitoring of the data storageunits 102 for service technicians without ripping out dashboards orother covers.

As a specific example, the data storage system 100 can be applied on anexisting eMMC evaluation board by adding a ZigBee or WiFi wirelessmodule. As another specific example, a ZigBee or WiFi network can beestablished with a personal computer (PC). While storage devices or thedata storage units 102 are under evaluation, health indicators of thedata storage units 102 can be read easily and real-time.

Referring now to FIG. 2, therein is shown an exemplary implementation ofthe data storage units 102. The exemplary implementation is depictedwith one of the data storage units 102.

The data storage units 102 can be connected and communicate withhost-unit controllers 202, which provide interface and exchange ofinformation between the data storage units 102 and the hosts 106 ofFIG. 1. For example, the data storage units 102 can include SSD-baseddata storage units. Also for example, the host-unit controllers 202 caninclude host-DSU controllers.

The data storage units 102 can include unit controllers 204 interfacedwith the service network controllers 110 and a number of non-volatilememory devices 206. Each of the unit controllers 204 includes a hostinterface to communicate with one of the host-unit controllers 202.

The unit controllers 204 include a number of general purposeinputs/outputs 208 (GPIO) for interfacing with one of the servicenetwork controllers 110. The general purpose inputs/outputs 208 providephysical connections for transferring information between the hosts 106and the service network servers 108 through the unit controllers 204.The general purpose inputs/outputs 208 can be programmed to provide aserial interface for serially transmitting information.

The service network controllers 110 can preferably be connected toantennas 210 to wirelessly communicate with the service network servers108 through the service networks 104. For illustrative purposes, theantennas 210 are shown outside of the service network controllers 110,although it is understood that the antennas 210 can be implementeddifferently. For example, the antennas 210 can be implemented orincluded in the service network controllers 110.

The unit controllers 204 include a memory interface to communicate withthe non-volatile memory devices 206. For example, the non-volatilememory devices 206 can include NAND, any other flash memory devices, ornon-volatile data storage devices.

Referring now to FIG. 3, therein is shown an exemplary implementation ofthe service network controllers 110. The exemplary implementation isdepicted with one of the service network controllers 110.

Each of the service network controllers 110 can be connected andcommunicate with the unit controllers 204 through the general purposeinputs/outputs 208. Each of the service network controllers 110 caninclude a microcontroller unit 302, denoted as MCU, interfacing with apower sensor 304 and a temperature sensor 306.

Each of the service network controllers 110 can preferably include awireless module 308. The wireless module 308 can be connected to theantennas 210. The antennas 210 can be included or integrated in each ofthe service network controllers 110. For example, the wireless module308 can include a wireless chip.

The microcontroller unit 302 controls operations of the power sensor 304and the temperature sensor 306 to collect operating power andtemperature information about the data storage units 102 of FIG. 1. Themicrocontroller unit 302 controls an operation of the wireless module308 to provide wireless connectivity between the data storage units 102and the service network servers 108 through the antennas 210, theservice networks 104, and the local network controllers 116 of FIG. 1.

Referring now to FIG. 4, therein is shown an operational flow chart ofthe data storage system 100 of FIG. 1. The operational flow chartdepicts a normal operation of the data storage units 102 of FIG. 1 onthe left side of FIG. 4 and an operation of the service networkcontrollers 110 on the right side of FIG. 4.

In the normal operation of the data storage units 102, the data storagesystem 100 can include a host initialization module 402. The hostinitialization module 402 initializes the data storage units 102 at thebeginning of the normal operation before the data storage units 102operate.

The data storage system 100 can include a host check module 404. Afterthe host initialization module 402 completes, the host check module 404checks storage unit statuses 406 of the data storage units 102. Thestorage unit statuses 406 can be checked by the hosts 106 of FIG. 1issuing check commands 408. The storage unit statuses 406 can refer tothe critical parameters previously described. For example, the storageunit statuses 406 can indicate that one of the data storage units 102 isnear its end of life or is weakening.

The check commands 408 are operations sent to the data storage units 102to inquire about operational states of the data storage units 102. Forexample, the check commands 408 can include an S.M.A.R.T. command or anyother commands that inquires about states of the data storage units 102.

The data storage system 100 can include an error report module 410 and acommand process module 412. If the host check module 404 determines thatthe storage unit statuses 406 is OK indicating that there is no failurewith the data storage units 102, the command process module 412processes one of read commands 414 or one of write commands 416.

The read commands 414 are operations performed on the data storage units102 to retrieve data or information from the data storage units 102. Thewrite commands 416 are operations performed on the data storage units102 to store data or information to the data storage units 102.

If the read commands 414 and the write commands 416 are completedsuccessfully, the command process module 412 processes another of theread commands 414 or another of the write commands 416. The successfulcompletion of the read commands 414 or the write commands 416 indicatesthat retrieval or storing operations performed on the data storage units102 complete without any failures.

If the host check module 404 determines that the storage unit statuses406 is not OK indicating that there is a failure with the data storageunits 102, the error report module 410 reports an error 418 to the hosts106. If the read commands 414 or the write commands 416 are notcompleted successfully, the error report module 410 reports the error418 to the hosts 106.

The error 418 indicates that there is either a failure with the datastorage units 102. The error 418 also indicates that the read commands414 or the write commands 416 are not completed successfully.

The data storage system 100 can include a host monitor module 420. Thehost monitor module 420 allows the hosts 106 to periodically monitor thestorage unit statuses 406 of any of the data storage units 102 in thenormal operation. The storage unit statuses 406 can be monitoredperiodically by the host monitor module 420 performing the monitoring atequal intervals.

The periodical monitoring of the storage unit statuses 406 by the hostmonitor module 420 impacts availability and performance of the hosts 106and thus would create a problem that negatively affects the overallperformance of the data storage system 100. After the storage unitstatuses 406 is monitored by the host monitor module 420, the commandprocess module 412 can proceed processing the read commands 414 or thewrite commands 416.

The service network controllers 110 can solve this problem by monitoringthe storage unit statuses 406 more frequently and thus reducing hostrequests, thereby improving the overall performance of the data storagesystem 100. The service network controllers 110 can be connected to theservice network servers 108.

Each of the service network controllers 110 can include a statusscheduler module 422. The status scheduler module 422 generates andsubmits check status requests 424 to a controller check module 426. Theservice network servers 108 can also optionally submit the check statusrequests 424 to the controller check module 426. The check statusrequests 424 are information used to inquire the storage unit statuses406 of the data storage units 102.

When the controller check module 426 receives the check status requests424, the controller check module 426 checks the storage unit statuses406 of the data storage units 102. The storage unit statuses 406 can bechecked by the controller check module 426 issuing the check commands408.

The controller check module 426 can also issue the check commands 408using a vendor specific command. The check commands 408 sent by thecontroller check module 426 can be performed via a side channel 428 thatinterfaces the controller check module 426 and the data storage units102.

The side channel 428 is separate from data and command buses connectedbetween a controller and storage devices. The side channel 428 does notaffect the normal data transmission into and out of the data storageunits 102 since the side channel 428 is a separate communicationmechanisms than the data and command buses. The side channel 428 canrefer to the side-band “service network” previously described.

The data storage system 100 can include a result report module 430.After the storage unit statuses 406 is checked, the result report module430 reports a check result 432 to the service network servers 108. Thecheck result 432 is a result of an evaluation of the storage unitstatuses 406. After the check result 432 is reported to the servicenetwork servers 108 and is determined as good such that the data storageunits 102 can be reliably accessed, the command process module 412 canproceed processing the read commands 414 or the write commands 416.

The status scheduler module 422, the controller check module 426, andthe result report module 430 in the service network controllers 110 canoperate in parallel with the normal operation of other components of thedata storage system 100 including the hosts 106 and the data storageunits 102. The status scheduler module 422, the controller check module426, and the result report module 430 can operate to collect informationto check the storage unit statuses 406 in parallel with and withoutinterrupting the hosts 106 and the data storage units 102 from theirnormal operation.

All of the data storage units 102 can be concurrently accessed to checkfor the storage unit statuses 406. The storage unit statuses 406 of eachof the data storage units 102 can then be used to determine the nextappropriate service action as necessary. For example, the statusscheduler module 422 submitting the check status requests 424 and thecontroller check module 426 checking the storage unit statuses 406 canoccur concurrently or in parallel with the command process module 412processing the read commands 414 or the write commands 416.

It has been found that the status scheduler module 422 for generatingthe check status requests 424 without interrupting the hosts 106provides improved performance because the check status requests 424 forinquiring the storage unit statuses 406 do not affect availability andperformance of the hosts 106.

It has also been found that the status scheduler module 422 forgenerating the check status requests 424 without interrupting the datastorage units 102 and concurrently with the processing of the readcommands 414 and the write commands 416 provides improved performance.The performance is improved because the check status requests 424 forinquiring the storage unit statuses 406 do not affect performance andoperation of the data storage units 102 during user data transferoperations.

It has further been found that the controller check module 426 forchecking the storage unit statuses 406 based on the check statusrequests 424 and for generating the check commands 408 withoutinterrupting the hosts 106 and the data storage units 102 providesimproved performance. The performance is improved because the controllercheck module 426 operates in parallel with the hosts 106 and the datastorage units 102 and thus does not affect performance during user datatransfer operations of the hosts 106 and the data storage units 102.

It has further been found that the result report module 430 forreporting the check result 432 based on the check commands 408 providesimproved reliability because the check result 432 is used to determinethat the data storage units 102 are reliably accessed before the readcommands 414 and the write commands 416 are processed.

Functions or operations of the data storage system 100 as describedabove can be implemented using modules. The functions or the operationsof the data storage system 100 can be implemented in hardware, software,or a combination thereof.

For example, the host initialization module 402, the host check module404, the error report module 410, the command process module 412, andthe host monitor module 420 can be implemented using the hosts 106, thedata storage units 102, the host-unit controllers 202 of FIG. 2, or acombination thereof. Also for example, the status scheduler module 422can be implemented using the service network servers 108, the unitcontrollers 204 of FIG. 2, the non-volatile memory devices 206 of FIG.2, the general purpose inputs/outputs 208 of FIG. 2, the antennas 210 ofFIG. 1, the microcontroller unit 302 of FIG. 3, the power sensor 304 ofFIG. 3, the temperature sensor 306 of FIG. 3, the wireless module 308 ofFIG. 3, or a combination thereof.

Further, for example, the controller check module 426 can be implementedusing the service network servers 108, the unit controllers 204, thenon-volatile memory devices 206, the general purpose inputs/outputs 208,the antennas 210, the microcontroller unit 302, the power sensor 304,the temperature sensor 306, the wireless module 308, or a combinationthereof. Yet further, for example, the result report module 430 can beimplemented using the service network servers 108, the unit controllers204, the non-volatile memory devices 206, the general purposeinputs/outputs 208, the antennas 210, the microcontroller unit 302, thepower sensor 304, the temperature sensor 306, the wireless module 308,or a combination thereof.

The data storage system 100 is described with module functions or orderas an example. The modules can be partitioned differently. Each of themodules can operate individually and independently of the other modules.Furthermore, data generated in one module can be used by another modulewithout being directly coupled to each other.

The host initialization module 402 can be coupled to the host checkmodule 404. The host check module 404 can be coupled to the error reportmodule 410 and the command process module 412. The command processmodule 412 can be coupled to the host check module 404 and the errorreport module 410. The host monitor module 420 can be coupled to thehost check module 404 and the command process module 412.

The status scheduler module 422 can be coupled to the controller checkmodule 426. The controller check module 426 can be coupled to the resultreport module 430. The result report module 430 can be coupled to thehost check module 404 and the command process module 412.

The physical transformation of generating the check status requests 424to inquire the storage unit statuses 406 results in movement in thephysical world, such as people using the data storage units 102 based onthe operation of the data storage system 100. As the movement in thephysical world occurs, the movement itself creates additionalinformation that is converted back to processing the read commands 414and the write commands 416 to be performed on the data storage units 102for the continued operation of the data storage system 100 and tocontinue the movement in the physical world.

Referring now to FIG. 5, therein is shown a data storage system 500 withinformation exchange mechanism in a second embodiment of the presentinvention. The data storage system 500 is shown as an exampleimplementation of the service networks 104 within one storage system.

One of the service network servers 108 can establish communication witheach of the service network controllers 110. The communication can beestablished through one of the local network controllers 116 and theservice networks 104.

Each of the service network controllers 110 can collect metadata on thedata storage units 102 attached thereto. The metadata can be sent to theservice network servers 108. The metadata is information associated withthe data storage units 102 for management or maintenance of the datastorage units 102.

The service network servers 108 can analyze the metadata collected andprovide instructions back to the service network controllers 110 and thedata storage units 102. The service network servers 108 can alsocommunicate with a central processing unit (CPU) in a mainboard 502 toredirect data to be stored to specific data storage units 102.

The mainboard 502 is a motherboard of a host system. The mainboard 502can include a single printed circuit board (PCB) or any number of PCBs.The mainboard 502 can represent a system board, a planar board, or alogic board. The mainboard 502 can include electronic components, suchas the CPU and memory. The mainboard 502 can provide connectors forperipherals.

One example of the data storage system 500 is to provide wear levelingamong the data storage units 102 including SSDs. The wear leveling canbe performed by monitoring the health status of storage elementsincluding NAND flash blocks within individual DSUs or each of the datastorage units 102. The wear leveling can be performed using the servicenetwork servers 108, the service network controllers 110, the datastorage units 102, the local network controllers 116, the servicenetworks 104, or a combination thereof.

Another example of the data storage system 500 is to direct the CPU ofthe mainboard 502 to avoid hot DSUs and use cold DSUs. Hot DSUs are DSUswith data that are accessed frequently. Cold DSUs are DSUs with datathat are accessed infrequently. Hot DSUs include data that are accessedmore frequently than those in cold DSUs.

Referring now to FIG. 6, therein is shown a flow chart of a method 600of operation of a data storage system in a further embodiment of thepresent invention. The method 600 includes: initializing a data storageunit in a block 602; processing a read command or a write commandperformed on the data storage unit in a block 604; and generating acheck status request to inquire a storage unit status of the datastorage unit, wherein the check status request occurs withoutinterrupting a host in a block 606.

Thus, it has been discovered that the data storage system 100 ofembodiments of the present invention furnish important and heretoforeunknown and unavailable solutions, capabilities, and functional aspectsfor a data storage system with information exchange mechanism. Theresulting method, process, apparatus, device, product, and/or system isstraightforward, cost-effective, uncomplicated, highly versatile,accurate, sensitive, and effective, and can be implemented by adaptingknown components for ready, efficient, and economical manufacturing,application, and utilization.

Another important aspect of embodiments of the present invention is thatit valuably supports and services the historical trend of reducingcosts, simplifying systems, and increasing performance.

These and other valuable aspects of embodiments of the present inventionconsequently further the state of the technology to at least the nextlevel.

While the invention has been described in conjunction with a specificbest mode, it is to be understood that many alternatives, modifications,and variations will be apparent to those skilled in the art in light ofthe aforegoing description. Accordingly, it is intended to embrace allsuch alternatives, modifications, and variations that fall within thescope of the included claims. All matters hithertofore set forth hereinor shown in the accompanying drawings are to be interpreted in anillustrative and non-limiting sense.

What is claimed is:
 1. A method of operation of a data storage systemcomprising: transferring user data over a wired data channel between ahost interface of a unit controller of a data storage unit and a hostcontroller of a host; receiving a check status request periodically froma service network server at a service network controller of the datastorage system to check a storage unit status of the data storage unitin real-time and in parallel with transferring the user data over thewired data channel to the host; generating a check result of the datastorage unit based on evaluating the storage unit status using a servicenetwork controller within the data storage unit; transferring, wirelessly via an antenna of the data storage unit, the check result to servicenetwork server over a service network channel without interrupting thewired data channel; and initiating wear-leveling between the datastorage unit and another data storage unit upon receiving an errormessage based on the check result from the service network server. 2.The method as claimed in claim 1 wherein generating the check resultincludes generating the check result concurrently with the transferringof the user data over the wired data channel.
 3. The method as claimedin claim 1 wherein the service network channel has a different physicalstructure than the wired data channel.
 4. The method as claimed in claim1 wherein the storage unit status is one of: a temperature, a terabyteswritten, a bit error rate, an elapsed time, or a power on time.
 5. Themethod as claimed in claim 1 wherein the service network channel is overa ZigBee or WiFi network.
 6. The method as claimed in claim 1, furthercomprising performing a command at the unit controller based on thecheck result.
 7. The method as claimed in claim 1 wherein the wired datachannel is a SATA bus.
 8. The method as claimed in claim 1 whereingenerating the check result includes generating the storage unit statusbased on a power sensor.
 9. The method as claimed in claim 1 whereintransferring the user data includes transferring the user data betweenthe host and the non-volatile memory device over a memory interface ofthe unit controller.
 10. The method as claimed in claim 1 whereintransferring the check result includes reporting the check result overthe antenna integral within the service network controller.
 11. A datastorage system comprising: a service network server; and a data storageunit, coupled to the service network server, comprising: a hostinterface of a unit controller configured to transfer user data over awired data channel between the host interface and a host controller of ahost, a status scheduler module within a service network controller ofthe data storage system configured to receive a check status requestfrom the service network server to check a storage unit status of thedata storage unit in real-time and in parallel with transferring theuser data over the wired data channel to the host, a memory interface ofthe unit controller configured to transfer the user data between anon-volatile memory device and the unit controller, and the servicenetwork controller, coupled to the unit controller, configured tocollect a storage unit status of the data store unit in real-time and inparallel with transferring the user data over the wired data channel tothe host, and to generate a check result of the data storage unit basedon evaluating the storage unit status, wirelessly transfer the checkresult to a service network over a service network channel via anantenna of the data storage unit without interrupting the wired datachannel, and initiate wear-leveling between the data storage unit andanother data storage unit upon receiving an error message based on thecheck result from the service network server.
 12. The system as claimedin claim 11 wherein the service network controller is further configuredto generate the check result concurrently with the transfer of the userdata over the wired data channel.
 13. The system as claimed in claim 11wherein the service network controller is further configured to reportthe check result over the service network channel having a differentphysical structure than the wired data channel.
 14. The system asclaimed in claim 11 wherein the service network controller is furtherconfigured to generate the storage unit status having a temperature,terabytes written, bit error rate, elapsed time, or power on time. 15.The system as claimed in claim 11 wherein the service network controlleris further configured to report the check result wirelessly over aZigBee or WiFi network.
 16. The system as claimed in claim 11 whereinthe unit controller is further configured to perform a command based onthe check result.
 17. The system as claimed in claim 11 wherein the unitcontroller is further configured to transfer the user data over a SATAbus.
 18. The system as claimed in claim 11 wherein the service networkcontroller is further configured to generate the storage unit statusbased on a power sensor.
 19. The system as claimed in claim 11 whereinthe unit controller is further configured to transfer the user databetween the host and the non-volatile memory device over a memoryinterface.
 20. The system as claimed in claim 11 wherein the servicenetwork controller is configured to report the check result over anantenna integral with the service network controller.